草庐IT

Python 正则表达式 findall

全部标签

ruby-on-rails - Ruby %r{ } 表达式

模型中有一个字段validates:image_file_name,:format=>{:with=>%r{\.(gif|jpg|jpeg|png)$}i这对我来说看起来很奇怪。我知道这是一个正则表达式。但我想:了解它的确切含义。%r{value}是否等于/value/?能够用普通的Ruby正则表达式运算符/someregex/或=~替换它。这可能吗? 最佳答案 %r{}等同于/.../表示法,但允许您在正则表达式中包含“/”而无需转义它们:%r{/home/user}相当于:/\/home\/user/为了易读性,这只是一种语法商

ruby - Ruby正则表达式中\A\z和^$的区别

在我阅读的文档中:Use\Aand\ztomatchthestartandendofthestring,^and$matchthestart/endofaline.我将应用正则表达式来检查用户提交的用户名(或电子邮件是否相同)。我应该在模型中将哪个表达式与validates_format_of一起使用?我无法理解其中的区别:我一直使用^和$... 最佳答案 如果您依赖正则表达式进行验证,您总是希望使用\A和\z.^和$只会匹配到换行符,这意味着他们可以使用像me@example.com\ndangerous_stuff();这样的电

ruby - 如何在 Ruby 中匹配所有出现的正则表达式

有没有一种快速的方法可以在Ruby中找到每个正则表达式的匹配项?我查看了RubySTL中的Regex对象并在Google上搜索无果。 最佳答案 使用scan应该做的伎俩:string.scan(/regex/) 关于ruby-如何在Ruby中匹配所有出现的正则表达式,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/80357/

javascript - 正则表达式中的 $ 与行尾不匹配

我对以下正则表达式有疑问:vars="http://www.google.com/dir/file\r\nhello"varre=newRegExp("http://([^/]+).*/([^/\r\n]+)$");vararr=re.exec(s);alert(arr[2]);在上面,我希望arr[2](即捕获组2)是"file",与最后一个匹配应用贪心后第一行中的4个字符。*,由于/中的回溯模式,然后通过$锚定在行尾。事实上,arr[]为空,这意味着模式甚至不匹配。我可以稍微改变它,使其完全符合我的意图:vars="http://www.google.com/dir/file\r\

javascript - 正则表达式匹配的内容

我一直在尝试将以下内容从Python转换为node.js。这是一个使用正则表达式检查IP地址是公共(public)地址还是私有(private)地址的简单程序:importredefis_private_ip(ip):"""Returns`True`ifthe`ip`parameterisaprivatenetworkaddress."""c=re.compile('(^127\.0\.0\.1)|(^10\.)|(^172\.1[6-9]\.)|(^172\.2[0-9]\.)|(^172\.3[0-1]\.)|(^192\.168\.)')ifc.match(ip):returnT

javascript - 正则表达式:匹配 DNA 序列的排列

如何制作正则表达式来评估以下字符串?TGATGCCGTCCCCTCAACTTGAGTGCTCCTAATGCGTTGC并提取模式CTCCT。模式必须是3个C和2个T,顺序不限。我试过/[C|T]{5}/但它匹配CCCCT和TCCCC提前致谢。 最佳答案 计算“CTCCT”的所有排列并将它们连接到正则表达式:CCCTT|CCTCT|CCTTC|CTCCT|CTCTC|CTTCC|TCCCT|TCCTC|TCTCC|TTCCC这个模式可以是optimized:C(?:C(?:T(?:CT|TC)|CTT)|T(?:C(?:CT|TC)|T

javascript - javascript 中的正则表达式只允许数字、逗号和一个小数点

目前我正在使用这个正则表达式来匹配具有单个小数点的正数/^\d+(\.\d+)?$/但这不允许逗号。我如何修改它以允许小数点前有零个或多个逗号?示例:11,111.00(应该允许)我可以接受在小数点前有任意数量逗号的数字。编辑:有效值11111,11111,111.0111111输入的值可以带或不带逗号。该字段的数据类型是SQLMONEY,因此它将处理逗号。 最佳答案 需要/^(?:\d{1,3}(?:,\d{3})*|\d+)(?:\.\d+)?$/参见regexdemo详情^-字符串的开始(?:\d{1,3}(?:,\d{3})

名称的 Javascript 验证正则表达式

我希望在我的应用程序中接受带有字母和连字符或破折号的名称,我的代码基于我在此处找到的答案并编码:functionvalidName(n){varnameRegex=/^[a-zA-Z\-]+$/;if(n.match(nameRegex)==null){return"Wrong";}else{return"Right";}}唯一的问题是它接受连字符作为我不想要的第一个字母(甚至多个)。谢谢 最佳答案 使用negativelookaheadassertion以避免匹配以连字符开头的字符串。虽然在字符类末尾提供时不需要在字符类中转义-。

javascript - 如何使用正则表达式解析 OCC 期权符号?

OCC期权符号由4部分组成:标的股票或ETF的根符号,用空格填充到6个字符到期日期,6位数字,格式为yymmdd看跌或看涨期权类型,P或C行权价,为价格x1000,前面用0到8位数字填充例如,SPX141122P00019500表示SPX看跌期权,2014年11月22日到期,行使价为19.50美元。是否可以使用正则表达式自动解析出来?我正在使用JavaScript 最佳答案 这是正则表达式(我强烈推荐http://regexr.com)([\w]{6})((\d{2})(\d{2})(\d{2}))([PC])(\d{8})第1组:

javascript - 正则表达式仅在没有特定父段之前才匹配 url 段

我正在尝试匹配url的最后一段,当且仅当它前面没有特定段('news-events')。因此,例如,我想在此处匹配“my-slug”:http://example.com/my-slug...但不在这里:http://example.com/news-events/my-slug我正在使用javascript--尝试过这样的事情:\b(?!news-events)(\/\w+)\b$...但是单词边界方法在这里不起作用,因为/字符用作段之间的边界(因此,最后一个段被选中,无论它前面是否有“新闻事件”。如有任何想法,我们将不胜感激。非常感谢。 最佳答案